#include <iostream>
#include <queue>
#include <map>
#include <unordered_map>
#include <vector>
#include <algorithm>
#include <cmath>
#include <string>
#include <cstring>
#include <set>
#include <unordered_set>
using namespace std;
typedef long long ll;
typedef unsigned long long Ull;
typedef pair<double,double> PII;
const int INF=0x3f3f3f3f;
set<PII> st;
const int N=20,M=21;
int main()
{
	for(int i=0;i<N;i++)
	{
		for(int j=0;j<M;j++)
		{
			for(int k=0;k<N;k++)
			{
				for(int z=0;z<M;z++)
				{
					if(i==k || j==z) continue;
					double k1=(j-z)*1.0/(i-k);
					double b = (j*k - i*z) * 1.0 / (k - i);
					st.insert({k1,b});
				}
			}
		}
	}
	cout<<st.size()+N+M;

	return 0;
}

